<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // 设计：

  // 参数：名
  // 返回值：字符，null
  // cookie.getItem("name")

  // 参数：名，值，配置信息
  // cookie.setItem("name", "value", {  })

  // 参数：名
  // cookie.removeItem("name")


  // 实现：

  const cookie = {
    setItem(key, value, ops={}){
      let expires = "";
      if( ops.expires ){
        const d = new Date();
        d.setDate( d.getDate() + ops.expires );
        expires = `;expires=${d}`;
      }

      let path = ops.path ? `;path=${ops.path}` : "";

      document.cookie = `${key}=${value}${expires}${path}`;
    },
    removeItem(key, ops={}){
      ops.expires = -1;
      this.setItem(key, "", ops);
    },
    getItem(key){
      let arr = document.cookie.split("; ")
      for(let i=0;i<arr.length;i++){
        const val = arr[i].split("=");
        if(val[0] === key){
          return val[1];
        }
      }
      return null;
    }
  }

  // 设置并配置cookie
  // cookie.setItem("name", "admin");
  // cookie.setItem("abc", "123");
  // cookie.setItem("asd", "456");
  // cookie.setItem("age", "18", {
  //   expires: 1
  // });
  // cookie.setItem("sex", "男", {
  //   path:"/day23"
  // });
  // cookie.setItem("msg", "haha", {
  //   expires: 1,
  //   path:"/day23"
  // });

  // 删除cookie
  // cookie.removeItem("msg");
  // cookie.removeItem("msg", {
  //   path:"/day23"
  // })

  // 获取cookie
  console.log( cookie.getItem("name") )
  console.log( cookie.getItem("abc") )
  console.log( cookie.getItem("asd") )
  console.log( cookie.getItem("zxc") )



  
</script>
</html>